from transformers import AutoModelForCausalLM
import bitsandbytes as bnb

# 加载4-bit量化后的模型
model = AutoModelForCausalLM.from_pretrained("/mnt/codes/qwen3/fine-tuning/Qwen3-8B-finetuned-4bit", 
                                             load_in_4bit=True, 
                                             device_map="auto")

# 确认加载模型
print(model)

del model

from transformers import AutoModelForCausalLM

# 重新加载原始模型并转为16-bit
model_16bit = AutoModelForCausalLM.from_pretrained("/mnt/codes/qwen3/fine-tuning/Qwen3-8B-finetuned-4bit", device_map="auto")

# 如果需要，执行相应的模型参数转换，确保所有层的精度为16-bit。
# 比如将模型权重转为16-bit（如果默认加载不符合要求）
model_16bit.half()  # 转换为16-bit精度

# 保存16-bit模型
model_16bit.save_pretrained("Qwen3-8B-finetuned-16bit-transformed")